package com.xlh.virtualization.domain.example;

import java.util.ArrayList;
import java.util.Date;
import java.util.List;

public class ContainerExample {
    protected String orderByClause;

    protected boolean distinct;

    protected List<Criteria> oredCriteria;

    public ContainerExample() {
        oredCriteria = new ArrayList<Criteria>();
    }

    public void setOrderByClause(String orderByClause) {
        this.orderByClause = orderByClause;
    }

    public String getOrderByClause() {
        return orderByClause;
    }

    public void setDistinct(boolean distinct) {
        this.distinct = distinct;
    }

    public boolean isDistinct() {
        return distinct;
    }

    public List<Criteria> getOredCriteria() {
        return oredCriteria;
    }

    public void or(Criteria criteria) {
        oredCriteria.add(criteria);
    }

    public Criteria or() {
        Criteria criteria = createCriteriaInternal();
        oredCriteria.add(criteria);
        return criteria;
    }

    public Criteria createCriteria() {
        Criteria criteria = createCriteriaInternal();
        if (oredCriteria.size() == 0) {
            oredCriteria.add(criteria);
        }
        return criteria;
    }

    protected Criteria createCriteriaInternal() {
        Criteria criteria = new Criteria();
        return criteria;
    }

    public void clear() {
        oredCriteria.clear();
        orderByClause = null;
        distinct = false;
    }

    protected abstract static class GeneratedCriteria {
        protected List<Criterion> criteria;

        protected GeneratedCriteria() {
            super();
            criteria = new ArrayList<Criterion>();
        }

        public boolean isValid() {
            return criteria.size() > 0;
        }

        public List<Criterion> getAllCriteria() {
            return criteria;
        }

        public List<Criterion> getCriteria() {
            return criteria;
        }

        protected void addCriterion(String condition) {
            if (condition == null) {
                throw new RuntimeException("Value for condition cannot be null");
            }
            criteria.add(new Criterion(condition));
        }

        protected void addCriterion(String condition, Object value, String property) {
            if (value == null) {
                throw new RuntimeException("Value for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value));
        }

        protected void addCriterion(String condition, Object value1, Object value2, String property) {
            if (value1 == null || value2 == null) {
                throw new RuntimeException("Between values for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value1, value2));
        }

        public Criteria andIdIsNull() {
            addCriterion("id is null");
            return (Criteria) this;
        }

        public Criteria andIdIsNotNull() {
            addCriterion("id is not null");
            return (Criteria) this;
        }

        public Criteria andIdEqualTo(Long value) {
            addCriterion("id =", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotEqualTo(Long value) {
            addCriterion("id <>", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdGreaterThan(Long value) {
            addCriterion("id >", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdGreaterThanOrEqualTo(Long value) {
            addCriterion("id >=", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdLessThan(Long value) {
            addCriterion("id <", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdLessThanOrEqualTo(Long value) {
            addCriterion("id <=", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdIn(List<Long> values) {
            addCriterion("id in", values, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotIn(List<Long> values) {
            addCriterion("id not in", values, "id");
            return (Criteria) this;
        }

        public Criteria andIdBetween(Long value1, Long value2) {
            addCriterion("id between", value1, value2, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotBetween(Long value1, Long value2) {
            addCriterion("id not between", value1, value2, "id");
            return (Criteria) this;
        }

        public Criteria andDokkaIdIsNull() {
            addCriterion("dokka_id is null");
            return (Criteria) this;
        }

        public Criteria andDokkaIdIsNotNull() {
            addCriterion("dokka_id is not null");
            return (Criteria) this;
        }

        public Criteria andDokkaIdEqualTo(Long value) {
            addCriterion("dokka_id =", value, "dokka_id");
            return (Criteria) this;
        }

        public Criteria andDokkaIdNotEqualTo(Long value) {
            addCriterion("dokka_id <>", value, "dokka_id");
            return (Criteria) this;
        }

        public Criteria andDokkaIdGreaterThan(Long value) {
            addCriterion("dokka_id >", value, "dokka_id");
            return (Criteria) this;
        }

        public Criteria andDokkaIdGreaterThanOrEqualTo(Long value) {
            addCriterion("dokka_id >=", value, "dokka_id");
            return (Criteria) this;
        }

        public Criteria andDokkaIdLessThan(Long value) {
            addCriterion("dokka_id <", value, "dokka_id");
            return (Criteria) this;
        }

        public Criteria andDokkaIdLessThanOrEqualTo(Long value) {
            addCriterion("dokka_id <=", value, "dokka_id");
            return (Criteria) this;
        }

        public Criteria andDokkaIdIn(List<Long> values) {
            addCriterion("dokka_id in", values, "dokka_id");
            return (Criteria) this;
        }

        public Criteria andDokkaIdNotIn(List<Long> values) {
            addCriterion("dokka_id not in", values, "dokka_id");
            return (Criteria) this;
        }

        public Criteria andDokkaIdBetween(Long value1, Long value2) {
            addCriterion("dokka_id between", value1, value2, "dokka_id");
            return (Criteria) this;
        }

        public Criteria andDokkaIdNotBetween(Long value1, Long value2) {
            addCriterion("dokka_id not between", value1, value2, "dokka_id");
            return (Criteria) this;
        }

        public Criteria andContainerNameIsNull() {
            addCriterion("container_name is null");
            return (Criteria) this;
        }

        public Criteria andContainerNameIsNotNull() {
            addCriterion("container_name is not null");
            return (Criteria) this;
        }

        public Criteria andContainerNameEqualTo(String value) {
            addCriterion("container_name =", value, "containerName");
            return (Criteria) this;
        }

        public Criteria andContainerNameNotEqualTo(String value) {
            addCriterion("container_name <>", value, "containerName");
            return (Criteria) this;
        }

        public Criteria andContainerNameGreaterThan(String value) {
            addCriterion("container_name >", value, "containerName");
            return (Criteria) this;
        }

        public Criteria andContainerNameGreaterThanOrEqualTo(String value) {
            addCriterion("container_name >=", value, "containerName");
            return (Criteria) this;
        }

        public Criteria andContainerNameLessThan(String value) {
            addCriterion("container_name <", value, "containerName");
            return (Criteria) this;
        }

        public Criteria andContainerNameLessThanOrEqualTo(String value) {
            addCriterion("container_name <=", value, "containerName");
            return (Criteria) this;
        }

        public Criteria andContainerNameLike(String value) {
            addCriterion("container_name like", value, "containerName");
            return (Criteria) this;
        }

        public Criteria andContainerNameNotLike(String value) {
            addCriterion("container_name not like", value, "containerName");
            return (Criteria) this;
        }

        public Criteria andContainerNameIn(List<String> values) {
            addCriterion("container_name in", values, "containerName");
            return (Criteria) this;
        }

        public Criteria andContainerNameNotIn(List<String> values) {
            addCriterion("container_name not in", values, "containerName");
            return (Criteria) this;
        }

        public Criteria andContainerNameBetween(String value1, String value2) {
            addCriterion("container_name between", value1, value2, "containerName");
            return (Criteria) this;
        }

        public Criteria andContainerNameNotBetween(String value1, String value2) {
            addCriterion("container_name not between", value1, value2, "containerName");
            return (Criteria) this;
        }

        public Criteria andImageIdIsNull() {
            addCriterion("image_id is null");
            return (Criteria) this;
        }

        public Criteria andImageIdIsNotNull() {
            addCriterion("image_id is not null");
            return (Criteria) this;
        }

        public Criteria andImageIdEqualTo(Long value) {
            addCriterion("image_id =", value, "imageId");
            return (Criteria) this;
        }

        public Criteria andImageIdNotEqualTo(Long value) {
            addCriterion("image_id <>", value, "imageId");
            return (Criteria) this;
        }

        public Criteria andImageIdGreaterThan(Long value) {
            addCriterion("image_id >", value, "imageId");
            return (Criteria) this;
        }

        public Criteria andImageIdGreaterThanOrEqualTo(Long value) {
            addCriterion("image_id >=", value, "imageId");
            return (Criteria) this;
        }

        public Criteria andImageIdLessThan(Long value) {
            addCriterion("image_id <", value, "imageId");
            return (Criteria) this;
        }

        public Criteria andImageIdLessThanOrEqualTo(Long value) {
            addCriterion("image_id <=", value, "imageId");
            return (Criteria) this;
        }

        public Criteria andImageIdIn(List<Long> values) {
            addCriterion("image_id in", values, "imageId");
            return (Criteria) this;
        }

        public Criteria andImageIdNotIn(List<Long> values) {
            addCriterion("image_id not in", values, "imageId");
            return (Criteria) this;
        }

        public Criteria andImageIdBetween(Long value1, Long value2) {
            addCriterion("image_id between", value1, value2, "imageId");
            return (Criteria) this;
        }

        public Criteria andImageIdNotBetween(Long value1, Long value2) {
            addCriterion("image_id not between", value1, value2, "imageId");
            return (Criteria) this;
        }

        public Criteria andIpIsNull() {
            addCriterion("ip is null");
            return (Criteria) this;
        }

        public Criteria andIpIsNotNull() {
            addCriterion("ip is not null");
            return (Criteria) this;
        }

        public Criteria andIpEqualTo(String value) {
            addCriterion("ip =", value, "ip");
            return (Criteria) this;
        }

        public Criteria andIpNotEqualTo(String value) {
            addCriterion("ip <>", value, "ip");
            return (Criteria) this;
        }

        public Criteria andIpGreaterThan(String value) {
            addCriterion("ip >", value, "ip");
            return (Criteria) this;
        }

        public Criteria andIpGreaterThanOrEqualTo(String value) {
            addCriterion("ip >=", value, "ip");
            return (Criteria) this;
        }

        public Criteria andIpLessThan(String value) {
            addCriterion("ip <", value, "ip");
            return (Criteria) this;
        }

        public Criteria andIpLessThanOrEqualTo(String value) {
            addCriterion("ip <=", value, "ip");
            return (Criteria) this;
        }

        public Criteria andIpLike(String value) {
            addCriterion("ip like", value, "ip");
            return (Criteria) this;
        }

        public Criteria andIpNotLike(String value) {
            addCriterion("ip not like", value, "ip");
            return (Criteria) this;
        }

        public Criteria andIpIn(List<String> values) {
            addCriterion("ip in", values, "ip");
            return (Criteria) this;
        }

        public Criteria andIpNotIn(List<String> values) {
            addCriterion("ip not in", values, "ip");
            return (Criteria) this;
        }

        public Criteria andIpBetween(String value1, String value2) {
            addCriterion("ip between", value1, value2, "ip");
            return (Criteria) this;
        }

        public Criteria andIpNotBetween(String value1, String value2) {
            addCriterion("ip not between", value1, value2, "ip");
            return (Criteria) this;
        }

        public Criteria andContainerStatusIsNull() {
            addCriterion("container_status is null");
            return (Criteria) this;
        }

        public Criteria andContainerStatusIsNotNull() {
            addCriterion("container_status is not null");
            return (Criteria) this;
        }

        public Criteria andContainerStatusEqualTo(Integer value) {
            addCriterion("container_status =", value, "containerStatus");
            return (Criteria) this;
        }

        public Criteria andContainerStatusNotEqualTo(Integer value) {
            addCriterion("container_status <>", value, "containerStatus");
            return (Criteria) this;
        }

        public Criteria andContainerStatusGreaterThan(Integer value) {
            addCriterion("container_status >", value, "containerStatus");
            return (Criteria) this;
        }

        public Criteria andContainerStatusGreaterThanOrEqualTo(Integer value) {
            addCriterion("container_status >=", value, "containerStatus");
            return (Criteria) this;
        }

        public Criteria andContainerStatusLessThan(Integer value) {
            addCriterion("container_status <", value, "containerStatus");
            return (Criteria) this;
        }

        public Criteria andContainerStatusLessThanOrEqualTo(Integer value) {
            addCriterion("container_status <=", value, "containerStatus");
            return (Criteria) this;
        }

        public Criteria andContainerStatusIn(List<Integer> values) {
            addCriterion("container_status in", values, "containerStatus");
            return (Criteria) this;
        }

        public Criteria andContainerStatusNotIn(List<Integer> values) {
            addCriterion("container_status not in", values, "containerStatus");
            return (Criteria) this;
        }

        public Criteria andContainerStatusBetween(Integer value1, Integer value2) {
            addCriterion("container_status between", value1, value2, "containerStatus");
            return (Criteria) this;
        }

        public Criteria andContainerStatusNotBetween(Integer value1, Integer value2) {
            addCriterion("container_status not between", value1, value2, "containerStatus");
            return (Criteria) this;
        }

        public Criteria andCpuIsNull() {
            addCriterion("cpu is null");
            return (Criteria) this;
        }

        public Criteria andCpuIsNotNull() {
            addCriterion("cpu is not null");
            return (Criteria) this;
        }

        public Criteria andCpuEqualTo(Integer value) {
            addCriterion("cpu =", value, "cpu");
            return (Criteria) this;
        }

        public Criteria andCpuNotEqualTo(Integer value) {
            addCriterion("cpu <>", value, "cpu");
            return (Criteria) this;
        }

        public Criteria andCpuGreaterThan(Integer value) {
            addCriterion("cpu >", value, "cpu");
            return (Criteria) this;
        }

        public Criteria andCpuGreaterThanOrEqualTo(Integer value) {
            addCriterion("cpu >=", value, "cpu");
            return (Criteria) this;
        }

        public Criteria andCpuLessThan(Integer value) {
            addCriterion("cpu <", value, "cpu");
            return (Criteria) this;
        }

        public Criteria andCpuLessThanOrEqualTo(Integer value) {
            addCriterion("cpu <=", value, "cpu");
            return (Criteria) this;
        }

        public Criteria andCpuIn(List<Integer> values) {
            addCriterion("cpu in", values, "cpu");
            return (Criteria) this;
        }

        public Criteria andCpuNotIn(List<Integer> values) {
            addCriterion("cpu not in", values, "cpu");
            return (Criteria) this;
        }

        public Criteria andCpuBetween(Integer value1, Integer value2) {
            addCriterion("cpu between", value1, value2, "cpu");
            return (Criteria) this;
        }

        public Criteria andCpuNotBetween(Integer value1, Integer value2) {
            addCriterion("cpu not between", value1, value2, "cpu");
            return (Criteria) this;
        }

        public Criteria andRamIsNull() {
            addCriterion("ram is null");
            return (Criteria) this;
        }

        public Criteria andRamIsNotNull() {
            addCriterion("ram is not null");
            return (Criteria) this;
        }

        public Criteria andRamEqualTo(Integer value) {
            addCriterion("ram =", value, "ram");
            return (Criteria) this;
        }

        public Criteria andRamNotEqualTo(Integer value) {
            addCriterion("ram <>", value, "ram");
            return (Criteria) this;
        }

        public Criteria andRamGreaterThan(Integer value) {
            addCriterion("ram >", value, "ram");
            return (Criteria) this;
        }

        public Criteria andRamGreaterThanOrEqualTo(Integer value) {
            addCriterion("ram >=", value, "ram");
            return (Criteria) this;
        }

        public Criteria andRamLessThan(Integer value) {
            addCriterion("ram <", value, "ram");
            return (Criteria) this;
        }

        public Criteria andRamLessThanOrEqualTo(Integer value) {
            addCriterion("ram <=", value, "ram");
            return (Criteria) this;
        }

        public Criteria andRamIn(List<Integer> values) {
            addCriterion("ram in", values, "ram");
            return (Criteria) this;
        }

        public Criteria andRamNotIn(List<Integer> values) {
            addCriterion("ram not in", values, "ram");
            return (Criteria) this;
        }

        public Criteria andRamBetween(Integer value1, Integer value2) {
            addCriterion("ram between", value1, value2, "ram");
            return (Criteria) this;
        }

        public Criteria andRamNotBetween(Integer value1, Integer value2) {
            addCriterion("ram not between", value1, value2, "ram");
            return (Criteria) this;
        }

        public Criteria andGpuIsNull() {
            addCriterion("gpu is null");
            return (Criteria) this;
        }

        public Criteria andGpuIsNotNull() {
            addCriterion("gpu is not null");
            return (Criteria) this;
        }

        public Criteria andGpuEqualTo(Boolean value) {
            addCriterion("gpu =", value, "gpu");
            return (Criteria) this;
        }

        public Criteria andGpuNotEqualTo(Boolean value) {
            addCriterion("gpu <>", value, "gpu");
            return (Criteria) this;
        }

        public Criteria andGpuGreaterThan(Boolean value) {
            addCriterion("gpu >", value, "gpu");
            return (Criteria) this;
        }

        public Criteria andGpuGreaterThanOrEqualTo(Boolean value) {
            addCriterion("gpu >=", value, "gpu");
            return (Criteria) this;
        }

        public Criteria andGpuLessThan(Boolean value) {
            addCriterion("gpu <", value, "gpu");
            return (Criteria) this;
        }

        public Criteria andGpuLessThanOrEqualTo(Boolean value) {
            addCriterion("gpu <=", value, "gpu");
            return (Criteria) this;
        }

        public Criteria andGpuIn(List<Boolean> values) {
            addCriterion("gpu in", values, "gpu");
            return (Criteria) this;
        }

        public Criteria andGpuNotIn(List<Boolean> values) {
            addCriterion("gpu not in", values, "gpu");
            return (Criteria) this;
        }

        public Criteria andGpuBetween(Boolean value1, Boolean value2) {
            addCriterion("gpu between", value1, value2, "gpu");
            return (Criteria) this;
        }

        public Criteria andGpuNotBetween(Boolean value1, Boolean value2) {
            addCriterion("gpu not between", value1, value2, "gpu");
            return (Criteria) this;
        }

        public Criteria andUserIdIsNull() {
            addCriterion("user_id is null");
            return (Criteria) this;
        }

        public Criteria andUserIdIsNotNull() {
            addCriterion("user_id is not null");
            return (Criteria) this;
        }

        public Criteria andUserIdEqualTo(Long value) {
            addCriterion("user_id =", value, "userId");
            return (Criteria) this;
        }

        public Criteria andUserIdNotEqualTo(Long value) {
            addCriterion("user_id <>", value, "userId");
            return (Criteria) this;
        }

        public Criteria andUserIdGreaterThan(Long value) {
            addCriterion("user_id >", value, "userId");
            return (Criteria) this;
        }

        public Criteria andUserIdGreaterThanOrEqualTo(Long value) {
            addCriterion("user_id >=", value, "userId");
            return (Criteria) this;
        }

        public Criteria andUserIdLessThan(Long value) {
            addCriterion("user_id <", value, "userId");
            return (Criteria) this;
        }

        public Criteria andUserIdLessThanOrEqualTo(Long value) {
            addCriterion("user_id <=", value, "userId");
            return (Criteria) this;
        }

        public Criteria andUserIdIn(List<Long> values) {
            addCriterion("user_id in", values, "userId");
            return (Criteria) this;
        }

        public Criteria andUserIdNotIn(List<Long> values) {
            addCriterion("user_id not in", values, "userId");
            return (Criteria) this;
        }

        public Criteria andUserIdBetween(Long value1, Long value2) {
            addCriterion("user_id between", value1, value2, "userId");
            return (Criteria) this;
        }

        public Criteria andUserIdNotBetween(Long value1, Long value2) {
            addCriterion("user_id not between", value1, value2, "userId");
            return (Criteria) this;
        }

        public Criteria andContextTypeIsNull() {
            addCriterion("context_type is null");
            return (Criteria) this;
        }

        public Criteria andContextTypeIsNotNull() {
            addCriterion("context_type is not null");
            return (Criteria) this;
        }

        public Criteria andContextTypeEqualTo(Integer value) {
            addCriterion("context_type =", value, "contextType");
            return (Criteria) this;
        }

        public Criteria andContextTypeNotEqualTo(Integer value) {
            addCriterion("context_type <>", value, "contextType");
            return (Criteria) this;
        }

        public Criteria andContextTypeGreaterThan(Integer value) {
            addCriterion("context_type >", value, "contextType");
            return (Criteria) this;
        }

        public Criteria andContextTypeGreaterThanOrEqualTo(Integer value) {
            addCriterion("context_type >=", value, "contextType");
            return (Criteria) this;
        }

        public Criteria andContextTypeLessThan(Integer value) {
            addCriterion("context_type <", value, "contextType");
            return (Criteria) this;
        }

        public Criteria andContextTypeLessThanOrEqualTo(Integer value) {
            addCriterion("context_type <=", value, "contextType");
            return (Criteria) this;
        }

        public Criteria andContextTypeIn(List<Integer> values) {
            addCriterion("context_type in", values, "contextType");
            return (Criteria) this;
        }

        public Criteria andContextTypeNotIn(List<Integer> values) {
            addCriterion("context_type not in", values, "contextType");
            return (Criteria) this;
        }

        public Criteria andContextTypeBetween(Integer value1, Integer value2) {
            addCriterion("context_type between", value1, value2, "contextType");
            return (Criteria) this;
        }

        public Criteria andContextTypeNotBetween(Integer value1, Integer value2) {
            addCriterion("context_type not between", value1, value2, "contextType");
            return (Criteria) this;
        }

        public Criteria andContextIdIsNull() {
            addCriterion("context_id is null");
            return (Criteria) this;
        }

        public Criteria andContextIdIsNotNull() {
            addCriterion("context_id is not null");
            return (Criteria) this;
        }

        public Criteria andContextIdEqualTo(Long value) {
            addCriterion("context_id =", value, "contextId");
            return (Criteria) this;
        }

        public Criteria andContextIdNotEqualTo(Long value) {
            addCriterion("context_id <>", value, "contextId");
            return (Criteria) this;
        }

        public Criteria andContextIdGreaterThan(Long value) {
            addCriterion("context_id >", value, "contextId");
            return (Criteria) this;
        }

        public Criteria andContextIdGreaterThanOrEqualTo(Long value) {
            addCriterion("context_id >=", value, "contextId");
            return (Criteria) this;
        }

        public Criteria andContextIdLessThan(Long value) {
            addCriterion("context_id <", value, "contextId");
            return (Criteria) this;
        }

        public Criteria andContextIdLessThanOrEqualTo(Long value) {
            addCriterion("context_id <=", value, "contextId");
            return (Criteria) this;
        }

        public Criteria andContextIdIn(List<Long> values) {
            addCriterion("context_id in", values, "contextId");
            return (Criteria) this;
        }

        public Criteria andContextIdNotIn(List<Long> values) {
            addCriterion("context_id not in", values, "contextId");
            return (Criteria) this;
        }

        public Criteria andContextIdBetween(Long value1, Long value2) {
            addCriterion("context_id between", value1, value2, "contextId");
            return (Criteria) this;
        }

        public Criteria andContextIdNotBetween(Long value1, Long value2) {
            addCriterion("context_id not between", value1, value2, "contextId");
            return (Criteria) this;
        }

        public Criteria andContainerRoleIsNull() {
            addCriterion("container_role is null");
            return (Criteria) this;
        }

        public Criteria andContainerRoleIsNotNull() {
            addCriterion("container_role is not null");
            return (Criteria) this;
        }

        public Criteria andContainerRoleEqualTo(Integer value) {
            addCriterion("container_role =", value, "containerRole");
            return (Criteria) this;
        }

        public Criteria andContainerRoleNotEqualTo(Integer value) {
            addCriterion("container_role <>", value, "containerRole");
            return (Criteria) this;
        }

        public Criteria andContainerRoleGreaterThan(Integer value) {
            addCriterion("container_role >", value, "containerRole");
            return (Criteria) this;
        }

        public Criteria andContainerRoleGreaterThanOrEqualTo(Integer value) {
            addCriterion("container_role >=", value, "containerRole");
            return (Criteria) this;
        }

        public Criteria andContainerRoleLessThan(Integer value) {
            addCriterion("container_role <", value, "containerRole");
            return (Criteria) this;
        }

        public Criteria andContainerRoleLessThanOrEqualTo(Integer value) {
            addCriterion("container_role <=", value, "containerRole");
            return (Criteria) this;
        }

        public Criteria andContainerRoleIn(List<Integer> values) {
            addCriterion("container_role in", values, "containerRole");
            return (Criteria) this;
        }

        public Criteria andContainerRoleNotIn(List<Integer> values) {
            addCriterion("container_role not in", values, "containerRole");
            return (Criteria) this;
        }

        public Criteria andContainerRoleBetween(Integer value1, Integer value2) {
            addCriterion("container_role between", value1, value2, "containerRole");
            return (Criteria) this;
        }

        public Criteria andContainerRoleNotBetween(Integer value1, Integer value2) {
            addCriterion("container_role not between", value1, value2, "containerRole");
            return (Criteria) this;
        }

        public Criteria andRoleNumberIsNull() {
            addCriterion("role_number is null");
            return (Criteria) this;
        }

        public Criteria andRoleNumberIsNotNull() {
            addCriterion("role_number is not null");
            return (Criteria) this;
        }

        public Criteria andRoleNumberEqualTo(Integer value) {
            addCriterion("role_number =", value, "roleNumber");
            return (Criteria) this;
        }

        public Criteria andRoleNumberNotEqualTo(Integer value) {
            addCriterion("role_number <>", value, "roleNumber");
            return (Criteria) this;
        }

        public Criteria andRoleNumberGreaterThan(Integer value) {
            addCriterion("role_number >", value, "roleNumber");
            return (Criteria) this;
        }

        public Criteria andRoleNumberGreaterThanOrEqualTo(Integer value) {
            addCriterion("role_number >=", value, "roleNumber");
            return (Criteria) this;
        }

        public Criteria andRoleNumberLessThan(Integer value) {
            addCriterion("role_number <", value, "roleNumber");
            return (Criteria) this;
        }

        public Criteria andRoleNumberLessThanOrEqualTo(Integer value) {
            addCriterion("role_number <=", value, "roleNumber");
            return (Criteria) this;
        }

        public Criteria andRoleNumberIn(List<Integer> values) {
            addCriterion("role_number in", values, "roleNumber");
            return (Criteria) this;
        }

        public Criteria andRoleNumberNotIn(List<Integer> values) {
            addCriterion("role_number not in", values, "roleNumber");
            return (Criteria) this;
        }

        public Criteria andRoleNumberBetween(Integer value1, Integer value2) {
            addCriterion("role_number between", value1, value2, "roleNumber");
            return (Criteria) this;
        }

        public Criteria andRoleNumberNotBetween(Integer value1, Integer value2) {
            addCriterion("role_number not between", value1, value2, "roleNumber");
            return (Criteria) this;
        }

        public Criteria andFullScreenIsNull() {
            addCriterion("is_full_screen is null");
            return (Criteria) this;
        }

        public Criteria andFullScreenIsNotNull() {
            addCriterion("is_full_screen is not null");
            return (Criteria) this;
        }

        public Criteria andFullScreenEqualTo(Boolean value) {
            addCriterion("is_full_screen =", value, "fullScreen");
            return (Criteria) this;
        }

        public Criteria andFullScreenNotEqualTo(Boolean value) {
            addCriterion("is_full_screen <>", value, "fullScreen");
            return (Criteria) this;
        }

        public Criteria andFullScreenGreaterThan(Boolean value) {
            addCriterion("is_full_screen >", value, "fullScreen");
            return (Criteria) this;
        }

        public Criteria andFullScreenGreaterThanOrEqualTo(Boolean value) {
            addCriterion("is_full_screen >=", value, "fullScreen");
            return (Criteria) this;
        }

        public Criteria andFullScreenLessThan(Boolean value) {
            addCriterion("is_full_screen <", value, "fullScreen");
            return (Criteria) this;
        }

        public Criteria andFullScreenLessThanOrEqualTo(Boolean value) {
            addCriterion("is_full_screen <=", value, "fullScreen");
            return (Criteria) this;
        }

        public Criteria andFullScreenIn(List<Boolean> values) {
            addCriterion("is_full_screen in", values, "fullScreen");
            return (Criteria) this;
        }

        public Criteria andFullScreenNotIn(List<Boolean> values) {
            addCriterion("is_full_screen not in", values, "fullScreen");
            return (Criteria) this;
        }

        public Criteria andFullScreenBetween(Boolean value1, Boolean value2) {
            addCriterion("is_full_screen between", value1, value2, "fullScreen");
            return (Criteria) this;
        }

        public Criteria andFullScreenNotBetween(Boolean value1, Boolean value2) {
            addCriterion("is_full_screen not between", value1, value2, "fullScreen");
            return (Criteria) this;
        }

        public Criteria andLengthIsNull() {
            addCriterion("length is null");
            return (Criteria) this;
        }

        public Criteria andLengthIsNotNull() {
            addCriterion("length is not null");
            return (Criteria) this;
        }

        public Criteria andLengthEqualTo(String value) {
            addCriterion("length =", value, "length");
            return (Criteria) this;
        }

        public Criteria andLengthNotEqualTo(String value) {
            addCriterion("length <>", value, "length");
            return (Criteria) this;
        }

        public Criteria andLengthGreaterThan(String value) {
            addCriterion("length >", value, "length");
            return (Criteria) this;
        }

        public Criteria andLengthGreaterThanOrEqualTo(String value) {
            addCriterion("length >=", value, "length");
            return (Criteria) this;
        }

        public Criteria andLengthLessThan(String value) {
            addCriterion("length <", value, "length");
            return (Criteria) this;
        }

        public Criteria andLengthLessThanOrEqualTo(String value) {
            addCriterion("length <=", value, "length");
            return (Criteria) this;
        }

        public Criteria andLengthLike(String value) {
            addCriterion("length like", value, "length");
            return (Criteria) this;
        }

        public Criteria andLengthNotLike(String value) {
            addCriterion("length not like", value, "length");
            return (Criteria) this;
        }

        public Criteria andLengthIn(List<String> values) {
            addCriterion("length in", values, "length");
            return (Criteria) this;
        }

        public Criteria andLengthNotIn(List<String> values) {
            addCriterion("length not in", values, "length");
            return (Criteria) this;
        }

        public Criteria andLengthBetween(String value1, String value2) {
            addCriterion("length between", value1, value2, "length");
            return (Criteria) this;
        }

        public Criteria andLengthNotBetween(String value1, String value2) {
            addCriterion("length not between", value1, value2, "length");
            return (Criteria) this;
        }

        public Criteria andWidthIsNull() {
            addCriterion("width is null");
            return (Criteria) this;
        }

        public Criteria andWidthIsNotNull() {
            addCriterion("width is not null");
            return (Criteria) this;
        }

        public Criteria andWidthEqualTo(String value) {
            addCriterion("width =", value, "width");
            return (Criteria) this;
        }

        public Criteria andWidthNotEqualTo(String value) {
            addCriterion("width <>", value, "width");
            return (Criteria) this;
        }

        public Criteria andWidthGreaterThan(String value) {
            addCriterion("width >", value, "width");
            return (Criteria) this;
        }

        public Criteria andWidthGreaterThanOrEqualTo(String value) {
            addCriterion("width >=", value, "width");
            return (Criteria) this;
        }

        public Criteria andWidthLessThan(String value) {
            addCriterion("width <", value, "width");
            return (Criteria) this;
        }

        public Criteria andWidthLessThanOrEqualTo(String value) {
            addCriterion("width <=", value, "width");
            return (Criteria) this;
        }

        public Criteria andWidthLike(String value) {
            addCriterion("width like", value, "width");
            return (Criteria) this;
        }

        public Criteria andWidthNotLike(String value) {
            addCriterion("width not like", value, "width");
            return (Criteria) this;
        }

        public Criteria andWidthIn(List<String> values) {
            addCriterion("width in", values, "width");
            return (Criteria) this;
        }

        public Criteria andWidthNotIn(List<String> values) {
            addCriterion("width not in", values, "width");
            return (Criteria) this;
        }

        public Criteria andWidthBetween(String value1, String value2) {
            addCriterion("width between", value1, value2, "width");
            return (Criteria) this;
        }

        public Criteria andWidthNotBetween(String value1, String value2) {
            addCriterion("width not between", value1, value2, "width");
            return (Criteria) this;
        }

        public Criteria andDeletedIsNull() {
            addCriterion("is_deleted is null");
            return (Criteria) this;
        }

        public Criteria andDeletedIsNotNull() {
            addCriterion("is_deleted is not null");
            return (Criteria) this;
        }

        public Criteria andDeletedEqualTo(Boolean value) {
            addCriterion("is_deleted =", value, "deleted");
            return (Criteria) this;
        }

        public Criteria andDeletedNotEqualTo(Boolean value) {
            addCriterion("is_deleted <>", value, "deleted");
            return (Criteria) this;
        }

        public Criteria andDeletedGreaterThan(Boolean value) {
            addCriterion("is_deleted >", value, "deleted");
            return (Criteria) this;
        }

        public Criteria andDeletedGreaterThanOrEqualTo(Boolean value) {
            addCriterion("is_deleted >=", value, "deleted");
            return (Criteria) this;
        }

        public Criteria andDeletedLessThan(Boolean value) {
            addCriterion("is_deleted <", value, "deleted");
            return (Criteria) this;
        }

        public Criteria andDeletedLessThanOrEqualTo(Boolean value) {
            addCriterion("is_deleted <=", value, "deleted");
            return (Criteria) this;
        }

        public Criteria andDeletedIn(List<Boolean> values) {
            addCriterion("is_deleted in", values, "deleted");
            return (Criteria) this;
        }

        public Criteria andDeletedNotIn(List<Boolean> values) {
            addCriterion("is_deleted not in", values, "deleted");
            return (Criteria) this;
        }

        public Criteria andDeletedBetween(Boolean value1, Boolean value2) {
            addCriterion("is_deleted between", value1, value2, "deleted");
            return (Criteria) this;
        }

        public Criteria andDeletedNotBetween(Boolean value1, Boolean value2) {
            addCriterion("is_deleted not between", value1, value2, "deleted");
            return (Criteria) this;
        }

        public Criteria andCreateTimeIsNull() {
            addCriterion("create_time is null");
            return (Criteria) this;
        }

        public Criteria andCreateTimeIsNotNull() {
            addCriterion("create_time is not null");
            return (Criteria) this;
        }

        public Criteria andCreateTimeEqualTo(Date value) {
            addCriterion("create_time =", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeNotEqualTo(Date value) {
            addCriterion("create_time <>", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeGreaterThan(Date value) {
            addCriterion("create_time >", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeGreaterThanOrEqualTo(Date value) {
            addCriterion("create_time >=", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeLessThan(Date value) {
            addCriterion("create_time <", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeLessThanOrEqualTo(Date value) {
            addCriterion("create_time <=", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeIn(List<Date> values) {
            addCriterion("create_time in", values, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeNotIn(List<Date> values) {
            addCriterion("create_time not in", values, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeBetween(Date value1, Date value2) {
            addCriterion("create_time between", value1, value2, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeNotBetween(Date value1, Date value2) {
            addCriterion("create_time not between", value1, value2, "createTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeIsNull() {
            addCriterion("update_time is null");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeIsNotNull() {
            addCriterion("update_time is not null");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeEqualTo(Date value) {
            addCriterion("update_time =", value, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeNotEqualTo(Date value) {
            addCriterion("update_time <>", value, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeGreaterThan(Date value) {
            addCriterion("update_time >", value, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeGreaterThanOrEqualTo(Date value) {
            addCriterion("update_time >=", value, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeLessThan(Date value) {
            addCriterion("update_time <", value, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeLessThanOrEqualTo(Date value) {
            addCriterion("update_time <=", value, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeIn(List<Date> values) {
            addCriterion("update_time in", values, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeNotIn(List<Date> values) {
            addCriterion("update_time not in", values, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeBetween(Date value1, Date value2) {
            addCriterion("update_time between", value1, value2, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeNotBetween(Date value1, Date value2) {
            addCriterion("update_time not between", value1, value2, "updateTime");
            return (Criteria) this;
        }
    }

    public static class Criteria extends GeneratedCriteria {

        protected Criteria() {
            super();
        }
    }

    public static class Criterion {
        private String condition;

        private Object value;

        private Object secondValue;

        private boolean noValue;

        private boolean singleValue;

        private boolean betweenValue;

        private boolean listValue;

        private String typeHandler;

        public String getCondition() {
            return condition;
        }

        public Object getValue() {
            return value;
        }

        public Object getSecondValue() {
            return secondValue;
        }

        public boolean isNoValue() {
            return noValue;
        }

        public boolean isSingleValue() {
            return singleValue;
        }

        public boolean isBetweenValue() {
            return betweenValue;
        }

        public boolean isListValue() {
            return listValue;
        }

        public String getTypeHandler() {
            return typeHandler;
        }

        protected Criterion(String condition) {
            super();
            this.condition = condition;
            this.typeHandler = null;
            this.noValue = true;
        }

        protected Criterion(String condition, Object value, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.typeHandler = typeHandler;
            if (value instanceof List<?>) {
                this.listValue = true;
            } else {
                this.singleValue = true;
            }
        }

        protected Criterion(String condition, Object value) {
            this(condition, value, null);
        }

        protected Criterion(String condition, Object value, Object secondValue, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.secondValue = secondValue;
            this.typeHandler = typeHandler;
            this.betweenValue = true;
        }

        protected Criterion(String condition, Object value, Object secondValue) {
            this(condition, value, secondValue, null);
        }
    }
}